﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Web;
using Mindfor.Web.Data;
using System.ComponentModel;

namespace Mindfor.Web.Modules.FeedBack
{
	public class FeedBackItem : IdEntity
	{
		[DisplayName("Дата")]
		public virtual DateTime Date { get; set; }

		[DisplayName("Текст")]
		[Required(ErrorMessage = "Введите текст отзыва.")]
		public virtual string Text { get; set; }

		[DisplayName("Ваше ФИО:")]
		[StringLength(255, ErrorMessage = "Длина имени не может превышать 255 символов.")]
		public virtual string Sender { get; set; }

		[DisplayName("Email")]
		[StringLengthWhenModuleOption(255, FeedBackModule.EmailEnabledOption, true,
			ErrorMessage = "Длина email не может превышать 255 символов.")]
		[RegularExpressionWhenModuleOption(RegexConsts.EmailRegex, FeedBackModule.EmailEnabledOption, true, ErrorMessage = "Введите корректный e-mail")]
		public virtual string Email { get; set; }

		[DisplayName("Номер телефона")]
		[StringLengthWhenModuleOption(20, FeedBackModule.PhoneEnabledOption, true,
			ErrorMessage = "Длина номера телефона не может превышать 20 символов.")]
		public virtual string Phone { get; set; }

		[DisplayName("Текст ответа")]
		public virtual string Answer { get; set; }
	}
}